//自定义ref 进行防抖操作 防抖操作可以减少网络的开支

import {customRef} from "vue";

export default function (value){

    let timer = null;

    //收集track决定什么时候收集依赖
    //收集trigger表示什么时候触发依赖进行更新
    return customRef((track,trigger) => {
        return{
            get(){
                track();
                return value;
            },
            set(newValue){
               clearTimeout(timer);
                timer = setTimeout(() => {
                 value = newValue;
                 trigger();
               },1000)
            }
        }
    })
}